#ifndef __HDUTASK_HEADER
#define __HDUTASK_HEADER

#include "oj_task.h"
#include <string>

struct HduTask: public OjTask {
	std::string check;
	std::string problemid;
	std::string language;
	std::string usercode;
	void *user_data;

	typedef std::string ss;
	typedef const char* ccp;
	HduTask(ss &sock, ss &oj, ss &pid, 
			ss &lang, ss &src, void *data = NULL):
		OjTask(sock, oj), check("0"), problemid(pid), 
		language(lang), usercode(src), user_data(data) {}
	HduTask(ccp sock, ccp oj, ccp pid,
			ccp lang, ccp src, void *data = NULL):
		OjTask(sock, oj), check("0"), problemid(pid),
		language(lang), usercode(src), user_data(data) {}
};

#endif // __HDUTASK_HEADER
